import axios from '@/utils/request'

/**
 * 获取文章列表
 * @params {Object} params {channel_id,timestamp,with_top}
 * @returns {AxiosPromise}
 */
export function getArticleList (params) {
  return axios({
    url: '/v1_1/articles',
    method: 'GET',
    params
  })
}

/**
 * 获取文章详情
 * @param {Number} id
 * @returns {AxiosPromise}
 */
export function getArticleDetail (id) {
  return axios({
    url: '/v1_0/articles/' + id
  })
}

/**
 * 收藏文章
 * @param {Number|Object} id
 * @returns {AxiosPromise}
 */
export function favoriteArticles (id) {
  return axios({
    url: '/v1_0/article/collections',
    method: 'POST',
    data: {
      target: id
    }
  })
}

/**
 * 取消收藏文章
 * @param {number|string}id
 * @returns {AxiosPromise}
 */
export function removeArticles (id) {
  return axios({
    url: '/v1_0/article/collections/' + id,
    method: 'DELETE'
  })
}

/**
 * 获取评论列表
 * @param {Object} params {target,content,art_id}
 * @returns {AxiosPromise}
 */
export function getCommentsList (params) {
  return axios({
    url: '/v1_0/comments',
    method: 'get',
    params
  })
}

/**
 * 发布评论
 * @param {Object} data {target,content,art_id}
 * target 文章id/评论id
 * content 评论内容
 * art_id 文章id，对评论内容发表回复时，需要传递此参数，表明所属文章id。对文章进行评论，不要传此参数。
 * @returns {AxiosPromise}
 */
export function addComment (data) {
  return axios({
    url: '/v1_0/comments',
    method: 'POST',
    data
  })
}
